<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Make Controller Kit - Firmware API: io.h Source File</title>
<link href="mt_doxygen.css" rel="stylesheet" type="text/css" />
<link href="../resources/mt_doxytabs.css" rel="stylesheet" type="text/css" />
<style type="text/css">
<!--
.header {
	font-family: Verdana, Arial, Helvetica, sans-serif;
	font-size: 12pt;
	color: #222222;
}
-->
</style>
</head>

<body>
<table width="800" border="0">
    <tr>
      <td colspan="3">
        <form method="get" action="http://www.google.com/search">
          <div align="right">
            <input type="text"   name="q" size="25"
              maxlength="255" value="" />
            <input type="submit" value="Search" />
            <input type="hidden" name="sitesearch" value="makingthings.com/ref/firmware/html" />
          </div>
        </form>
       </td>
    </tr>
    <tr>
      <td><div align="center"><a href="http://www.makingthings.com">
				<img src="../resources/logo_brown_medium.png" alt="MakingThings"
									width="200" height="78" border="0" align="middle" longdesc="http://www.makingthings.com" /></a></div></td>
				<td><div align="center" class="header">
      		Make Controller Kit <br />
          Firmware API
      </div></td>
      <td><div align="center"><a href="http://www.makezine.com">
					<img src="../resources/make_logo.png" alt="MAKE Zine" 
										width="164" height="73" border="0" align="middle" longdesc="http://www.makezine.com" /></a></div></td>
    </tr>
</table>
</body>
</html>
<!-- Generated by Doxygen 1.5.4 -->
<script type="text/javascript">
<!--
function changeDisplayState (e){
  var num=this.id.replace(/[^[0-9]/g,'');
  var button=this.firstChild;
  var sectionDiv=document.getElementById('dynsection'+num);
  if (sectionDiv.style.display=='none'||sectionDiv.style.display==''){
    sectionDiv.style.display='block';
    button.src='open.gif';
  }else{
    sectionDiv.style.display='none';
    button.src='closed.gif';
  }
}
function initDynSections(){
  var divs=document.getElementsByTagName('div');
  var sectionCounter=1;
  for(var i=0;i<divs.length-1;i++){
    if(divs[i].className=='dynheader'&&divs[i+1].className=='dynsection'){
      var header=divs[i];
      var section=divs[i+1];
      var button=header.firstChild;
      if (button!='IMG'){
        divs[i].insertBefore(document.createTextNode(' '),divs[i].firstChild);
        button=document.createElement('img');
        divs[i].insertBefore(button,divs[i].firstChild);
      }
      header.style.cursor='pointer';
      header.onclick=changeDisplayState;
      header.id='dynheader'+sectionCounter;
      button.src='closed.gif';
      section.id='dynsection'+sectionCounter;
      section.style.display='none';
      section.style.marginLeft='14px';
      sectionCounter++;
    }
  }
}
window.onload = initDynSections;
-->
</script>
<div class="tabs">
  <ul>
    <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
    <li><a href="modules.html"><span>Modules</span></a></li>
    <li><a href="classes.html"><span>Data&nbsp;Structures</span></a></li>
    <li class="current"><a href="files.html"><span>Files</span></a></li>
    <li><a href="pages.html"><span>Related&nbsp;Pages</span></a></li>
  </ul>
</div>
<h1>io.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/*********************************************************************************</span>
<a name="l00002"></a>00002 <span class="comment"></span>
<a name="l00003"></a>00003 <span class="comment"> Copyright 2006 MakingThings</span>
<a name="l00004"></a>00004 <span class="comment"></span>
<a name="l00005"></a>00005 <span class="comment"> Licensed under the Apache License, </span>
<a name="l00006"></a>00006 <span class="comment"> Version 2.0 (the "License"); you may not use this file except in compliance </span>
<a name="l00007"></a>00007 <span class="comment"> with the License. You may obtain a copy of the License at</span>
<a name="l00008"></a>00008 <span class="comment"></span>
<a name="l00009"></a>00009 <span class="comment"> http://www.apache.org/licenses/LICENSE-2.0 </span>
<a name="l00010"></a>00010 <span class="comment"> </span>
<a name="l00011"></a>00011 <span class="comment"> Unless required by applicable law or agreed to in writing, software distributed</span>
<a name="l00012"></a>00012 <span class="comment"> under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR</span>
<a name="l00013"></a>00013 <span class="comment"> CONDITIONS OF ANY KIND, either express or implied. See the License for</span>
<a name="l00014"></a>00014 <span class="comment"> the specific language governing permissions and limitations under the License.</span>
<a name="l00015"></a>00015 <span class="comment"></span>
<a name="l00016"></a>00016 <span class="comment">*********************************************************************************/</span>
<a name="l00017"></a>00017 
<a name="l00018"></a>00018 <span class="comment">/*</span>
<a name="l00019"></a>00019 <span class="comment">  io.h</span>
<a name="l00020"></a>00020 <span class="comment"></span>
<a name="l00021"></a>00021 <span class="comment">  MakingThings</span>
<a name="l00022"></a>00022 <span class="comment">*/</span>
<a name="l00023"></a>00023 
<a name="l00024"></a>00024 <span class="preprocessor">#ifndef IO_H</span>
<a name="l00025"></a>00025 <span class="preprocessor"></span><span class="preprocessor">#define IO_H</span>
<a name="l00026"></a>00026 <span class="preprocessor"></span>
<a name="l00027"></a>00027 <span class="preprocessor">#include "types.h"</span>
<a name="l00028"></a>00028 
<a name="l00029"></a>00029 <span class="keywordtype">int</span>  Io_Start( <span class="keywordtype">int</span> index, <span class="keywordtype">bool</span> lock );
<a name="l00030"></a>00030 <span class="keywordtype">int</span>  Io_Stop( <span class="keywordtype">int</span> index );
<a name="l00031"></a>00031 <span class="keywordtype">int</span>  Io_StartBits( longlong bits, <span class="keywordtype">bool</span> lock );
<a name="l00032"></a>00032 <span class="keywordtype">int</span>  Io_StopBits( longlong bits );
<a name="l00033"></a>00033 
<a name="l00034"></a>00034 <span class="keywordtype">int</span> <a class="code" href="group___io.html#g8a4becb6f3eeeb93849fa352633d40f2" title="Lock or release an IO line.">Io_SetActive</a>( <span class="keywordtype">int</span> index, <span class="keywordtype">int</span> active );
<a name="l00035"></a>00035 <span class="keywordtype">int</span> Io_GetActive( <span class="keywordtype">int</span> index );
<a name="l00036"></a>00036 
<a name="l00037"></a>00037 <span class="keywordtype">int</span> <a class="code" href="group___io.html#gf836954ad8c7001e80d3c043a3c23a75" title="Set whether an IO line is an output or an input.">Io_SetDirection</a>( <span class="keywordtype">int</span> index, <span class="keywordtype">int</span> output );
<a name="l00038"></a>00038 <span class="keywordtype">int</span> <a class="code" href="group___io.html#g068a4b07b47f9c71d39d1f88ed50ba64" title="Read whether an IO line is an output or an input.">Io_GetDirection</a>( <span class="keywordtype">int</span> index );
<a name="l00039"></a>00039 
<a name="l00040"></a>00040 <span class="keywordtype">int</span> Io_SetPortA( <span class="keywordtype">int</span> value );
<a name="l00041"></a>00041 <span class="keywordtype">int</span> Io_GetPortA( <span class="keywordtype">void</span> );
<a name="l00042"></a>00042 <span class="keywordtype">int</span> Io_SetPortB( <span class="keywordtype">int</span> value );
<a name="l00043"></a>00043 <span class="keywordtype">int</span> Io_GetPortB( <span class="keywordtype">void</span> );
<a name="l00044"></a>00044 <span class="keywordtype">int</span> Io_SetPortAMask( <span class="keywordtype">int</span> value );
<a name="l00045"></a>00045 <span class="keywordtype">int</span> Io_GetPortAMask( <span class="keywordtype">void</span> );
<a name="l00046"></a>00046 <span class="keywordtype">int</span> Io_SetPortBMask( <span class="keywordtype">int</span> value );
<a name="l00047"></a>00047 <span class="keywordtype">int</span> Io_GetPortBMask( <span class="keywordtype">void</span> );
<a name="l00048"></a>00048 
<a name="l00049"></a>00049 <span class="keywordtype">int</span>  Io_SetOutput( <span class="keywordtype">int</span> index );
<a name="l00050"></a>00050 <span class="keywordtype">int</span>  Io_SetInput( <span class="keywordtype">int</span> index );
<a name="l00051"></a>00051 <span class="keywordtype">int</span>  Io_SetTrue( <span class="keywordtype">int</span> index );
<a name="l00052"></a>00052 <span class="keywordtype">int</span>  Io_SetFalse( <span class="keywordtype">int</span> index );
<a name="l00053"></a>00053 <span class="keywordtype">int</span>  <a class="code" href="group___io.html#g31c976a85de4306c66be6b4c441d3892" title="Turn an IO line on or off.">Io_SetValue</a>( <span class="keywordtype">int</span> index, <span class="keywordtype">char</span> value );
<a name="l00054"></a>00054 <span class="keywordtype">char</span> <a class="code" href="group___io.html#gfdcf7332d0ae5b38d2a776fb6cc5ba7b" title="Read whether an IO line, presumably set as an output, is on or off.">Io_GetValue</a>( <span class="keywordtype">int</span> index );
<a name="l00055"></a>00055 <span class="keywordtype">int</span>  Io_SetPeripheralA( <span class="keywordtype">int</span> index );
<a name="l00056"></a>00056 <span class="keywordtype">int</span>  Io_SetPeripheralB( <span class="keywordtype">int</span> index );
<a name="l00057"></a>00057 <span class="keywordtype">int</span>  Io_SetPio( <span class="keywordtype">int</span> index, <span class="keywordtype">int</span> enable );
<a name="l00058"></a>00058 <span class="keywordtype">int</span>  Io_GetPio( <span class="keywordtype">int</span> index );
<a name="l00059"></a>00059 <span class="keywordtype">int</span>  Io_PioEnable( <span class="keywordtype">int</span> index );
<a name="l00060"></a>00060 <span class="keywordtype">int</span>  Io_PioDisable( <span class="keywordtype">int</span> index );
<a name="l00061"></a>00061 <span class="keywordtype">int</span>  <a class="code" href="group___io.html#g3ff4308d5768d83b4f2fe153576fc21e" title="Set the pullup resistor for an IO line on or off.">Io_SetPullup</a>( <span class="keywordtype">int</span> index, <span class="keywordtype">int</span> enable );
<a name="l00062"></a>00062 <span class="keywordtype">int</span>  <a class="code" href="group___io.html#gea14ac73a96c7c5ede5313532fcd35d7" title="Read whether the pullup resistor for an IO line on or off.">Io_GetPullup</a>( <span class="keywordtype">int</span> index );
<a name="l00063"></a>00063 <span class="keywordtype">int</span>  Io_PullupEnable( <span class="keywordtype">int</span> index );
<a name="l00064"></a>00064 <span class="keywordtype">int</span>  Io_PullupDisable( <span class="keywordtype">int</span> index );
<a name="l00065"></a>00065 
<a name="l00066"></a>00066 <span class="keywordtype">void</span> Io_SetOutputBits( longlong bits );
<a name="l00067"></a>00067 <span class="keywordtype">void</span> Io_SetInputBits( longlong bits );
<a name="l00068"></a>00068 <span class="keywordtype">void</span> Io_SetTrueBits( longlong bits );
<a name="l00069"></a>00069 <span class="keywordtype">void</span> Io_SetFalseBits( longlong bits );
<a name="l00070"></a>00070 <span class="keywordtype">void</span> Io_SetValueBits( longlong bits, longlong value );
<a name="l00071"></a>00071 <span class="keywordtype">int</span>  Io_SetPeripheralABits( longlong bits );
<a name="l00072"></a>00072 <span class="keywordtype">int</span>  Io_SetPeripheralBBits( longlong bits );
<a name="l00073"></a>00073 <span class="keywordtype">int</span>  Io_PioEnableBits( longlong bits );
<a name="l00074"></a>00074 <span class="keywordtype">int</span>  Io_PioDisableBits( longlong bits );
<a name="l00075"></a>00075 longlong Io_GetValueBits( <span class="keywordtype">void</span> );
<a name="l00076"></a>00076 
<a name="l00077"></a>00077 <span class="keyword">const</span> <span class="keywordtype">char</span>* IoOsc_GetName( <span class="keywordtype">void</span> );
<a name="l00078"></a>00078 <span class="keywordtype">int</span> IoOsc_ReceiveMessage( <span class="keywordtype">int</span> channel, <span class="keywordtype">char</span>* message, <span class="keywordtype">int</span> length );
<a name="l00079"></a>00079 
<a name="l00080"></a>00080 <span class="keywordtype">int</span>  Io_Test( <span class="keywordtype">void</span> );
<a name="l00081"></a>00081 <span class="comment"></span>
<a name="l00082"></a>00082 <span class="comment">/**</span>
<a name="l00083"></a>00083 <span class="comment">  \defgroup IoIndices IO Indices</span>
<a name="l00084"></a>00084 <span class="comment">  Indices (0-63) for each of the processor's IO lines.  PA0-PA31 are represented</span>
<a name="l00085"></a>00085 <span class="comment">  by indices 0 - 31, PB0-PB31 by indices 32 - 63.</span>
<a name="l00086"></a>00086 <span class="comment">  \ingroup Io</span>
<a name="l00087"></a>00087 <span class="comment">  @{</span>
<a name="l00088"></a>00088 <span class="comment">*/</span>
<a name="l00089"></a>00089 <span class="comment"></span>
<a name="l00090"></a>00090 <span class="comment">/** IO 0, Port A */</span>
<a name="l00091"></a><a class="code" href="group___io_indices.html#g4b4eeed896a729a5d9486c8b5ab5e7d2">00091</a> <span class="preprocessor">#define IO_PA00  0</span>
<a name="l00092"></a>00092 <span class="preprocessor"></span><span class="comment">/** IO 1, Port A */</span>
<a name="l00093"></a><a class="code" href="group___io_indices.html#gd091a284381793316e217ae060cc12f5">00093</a> <span class="preprocessor">#define IO_PA01  1</span>
<a name="l00094"></a>00094 <span class="preprocessor"></span><span class="comment">/** IO 2, Port A */</span>
<a name="l00095"></a><a class="code" href="group___io_indices.html#gb01f65727a8ec82ca41e9664922d6bbf">00095</a> <span class="preprocessor">#define IO_PA02  2</span>
<a name="l00096"></a>00096 <span class="preprocessor"></span><span class="comment">/** IO 3, Port A */</span>
<a name="l00097"></a><a class="code" href="group___io_indices.html#g1ce7e4ae9f83a7e18c01d30df7501e6f">00097</a> <span class="preprocessor">#define IO_PA03  3</span>
<a name="l00098"></a>00098 <span class="preprocessor"></span><span class="comment">/** IO 4, Port A */</span>
<a name="l00099"></a><a class="code" href="group___io_indices.html#gb82881d15c1260fa74468309e085d030">00099</a> <span class="preprocessor">#define IO_PA04  4</span>
<a name="l00100"></a>00100 <span class="preprocessor"></span><span class="comment">/** IO 5, Port A */</span>
<a name="l00101"></a><a class="code" href="group___io_indices.html#gbda3ebf6deca01f49af94b0d021c72ce">00101</a> <span class="preprocessor">#define IO_PA05  5</span>
<a name="l00102"></a>00102 <span class="preprocessor"></span><span class="comment">/** IO 6, Port A */</span>
<a name="l00103"></a><a class="code" href="group___io_indices.html#gc2e6a513c154f0b3c6f8477f6466a243">00103</a> <span class="preprocessor">#define IO_PA06  6</span>
<a name="l00104"></a>00104 <span class="preprocessor"></span><span class="comment">/** IO 7, Port A */</span>
<a name="l00105"></a><a class="code" href="group___io_indices.html#ge75171d99a1d6961a4e007296cb0a358">00105</a> <span class="preprocessor">#define IO_PA07  7</span>
<a name="l00106"></a>00106 <span class="preprocessor"></span><span class="comment">/** IO 8, Port A */</span>
<a name="l00107"></a><a class="code" href="group___io_indices.html#g2094288a27371c143a26c010fad67e63">00107</a> <span class="preprocessor">#define IO_PA08  8</span>
<a name="l00108"></a>00108 <span class="preprocessor"></span><span class="comment">/** IO 9, Port A */</span>
<a name="l00109"></a><a class="code" href="group___io_indices.html#g365bf3a92023da124ab976f8a677b7af">00109</a> <span class="preprocessor">#define IO_PA09  9</span>
<a name="l00110"></a>00110 <span class="preprocessor"></span><span class="comment">/** IO 10, Port A */</span>
<a name="l00111"></a><a class="code" href="group___io_indices.html#gc84e3d536690cdd6965472c5fa6331b5">00111</a> <span class="preprocessor">#define IO_PA10 10</span>
<a name="l00112"></a>00112 <span class="preprocessor"></span><span class="comment">/** IO 11, Port A */</span>
<a name="l00113"></a><a class="code" href="group___io_indices.html#g031039919b10825d8352ed32806d9d68">00113</a> <span class="preprocessor">#define IO_PA11 11</span>
<a name="l00114"></a>00114 <span class="preprocessor"></span><span class="comment">/** IO 12, Port A */</span>
<a name="l00115"></a><a class="code" href="group___io_indices.html#gf3b356bab1df2fae276b58f596f88f14">00115</a> <span class="preprocessor">#define IO_PA12 12</span>
<a name="l00116"></a>00116 <span class="preprocessor"></span><span class="comment">/** IO 113, Port A */</span>
<a name="l00117"></a><a class="code" href="group___io_indices.html#gc57857a9456f2d3b937d32f739cf624c">00117</a> <span class="preprocessor">#define IO_PA13 13</span>
<a name="l00118"></a>00118 <span class="preprocessor"></span><span class="comment">/** IO 14, Port A */</span>
<a name="l00119"></a><a class="code" href="group___io_indices.html#g6c7610b7b67d12f47cfc53fb3b690d0b">00119</a> <span class="preprocessor">#define IO_PA14 14</span>
<a name="l00120"></a>00120 <span class="preprocessor"></span><span class="comment">/** IO 15, Port A */</span>
<a name="l00121"></a><a class="code" href="group___io_indices.html#g0874f51e154bfcdace506a48dc295d8b">00121</a> <span class="preprocessor">#define IO_PA15 15</span>
<a name="l00122"></a>00122 <span class="preprocessor"></span><span class="comment">/** IO 16, Port A */</span>
<a name="l00123"></a><a class="code" href="group___io_indices.html#g83ff855158a118ca0bc777924fc49d8f">00123</a> <span class="preprocessor">#define IO_PA16 16</span>
<a name="l00124"></a>00124 <span class="preprocessor"></span><span class="comment">/** IO 17, Port A */</span>
<a name="l00125"></a><a class="code" href="group___io_indices.html#g5c19735a0f7d4746c59e93d4da28212b">00125</a> <span class="preprocessor">#define IO_PA17 17</span>
<a name="l00126"></a>00126 <span class="preprocessor"></span><span class="comment">/** IO 18, Port A */</span>
<a name="l00127"></a><a class="code" href="group___io_indices.html#g77ae10857dcba2d45f77615043443d45">00127</a> <span class="preprocessor">#define IO_PA18 18</span>
<a name="l00128"></a>00128 <span class="preprocessor"></span><span class="comment">/** IO 19, Port A */</span>
<a name="l00129"></a><a class="code" href="group___io_indices.html#gc18d7167d7308ebe1d3f7cdfad8eb821">00129</a> <span class="preprocessor">#define IO_PA19 19</span>
<a name="l00130"></a>00130 <span class="preprocessor"></span><span class="comment">/** IO 20, Port A */</span>
<a name="l00131"></a><a class="code" href="group___io_indices.html#g96e9d0d6759be2b91b926bce330f12f1">00131</a> <span class="preprocessor">#define IO_PA20 20</span>
<a name="l00132"></a>00132 <span class="preprocessor"></span><span class="comment">/** IO 21, Port A */</span>
<a name="l00133"></a><a class="code" href="group___io_indices.html#g8e69fe162445bb4b727dad3b721e5de2">00133</a> <span class="preprocessor">#define IO_PA21 21</span>
<a name="l00134"></a>00134 <span class="preprocessor"></span><span class="comment">/** IO 22, Port A */</span>
<a name="l00135"></a><a class="code" href="group___io_indices.html#g3108084ec9530dd1f04d679146ca03fd">00135</a> <span class="preprocessor">#define IO_PA22 22</span>
<a name="l00136"></a>00136 <span class="preprocessor"></span><span class="comment">/** IO 23, Port A */</span>
<a name="l00137"></a><a class="code" href="group___io_indices.html#g14901526d40a66b1b52aef0a7d4819ba">00137</a> <span class="preprocessor">#define IO_PA23 23</span>
<a name="l00138"></a>00138 <span class="preprocessor"></span><span class="comment">/** IO 24, Port A */</span>
<a name="l00139"></a><a class="code" href="group___io_indices.html#gdcf48ddb4e71dc4ef43972909a019d47">00139</a> <span class="preprocessor">#define IO_PA24 24</span>
<a name="l00140"></a>00140 <span class="preprocessor"></span><span class="comment">/** IO 25, Port A */</span>
<a name="l00141"></a><a class="code" href="group___io_indices.html#ga0b952538f8579616fec66c0803de037">00141</a> <span class="preprocessor">#define IO_PA25 25</span>
<a name="l00142"></a>00142 <span class="preprocessor"></span><span class="comment">/** IO 26, Port A */</span>
<a name="l00143"></a><a class="code" href="group___io_indices.html#g716d85950fd285edc45c1823d0d16264">00143</a> <span class="preprocessor">#define IO_PA26 26</span>
<a name="l00144"></a>00144 <span class="preprocessor"></span><span class="comment">/** IO 27, Port A */</span>
<a name="l00145"></a><a class="code" href="group___io_indices.html#g609876091364a97346c45992ffb12b13">00145</a> <span class="preprocessor">#define IO_PA27 27</span>
<a name="l00146"></a>00146 <span class="preprocessor"></span><span class="comment">/** IO 28, Port A */</span>
<a name="l00147"></a><a class="code" href="group___io_indices.html#g2d6a66b90213cfe8e6014e60dcc04821">00147</a> <span class="preprocessor">#define IO_PA28 28</span>
<a name="l00148"></a>00148 <span class="preprocessor"></span><span class="comment">/** IO 29, Port A */</span>
<a name="l00149"></a><a class="code" href="group___io_indices.html#g380136f7e1585198b0efc7daaa4f6cb7">00149</a> <span class="preprocessor">#define IO_PA29 29</span>
<a name="l00150"></a>00150 <span class="preprocessor"></span><span class="comment">/** IO 30, Port A */</span>
<a name="l00151"></a><a class="code" href="group___io_indices.html#g6c00dea41618c017010018bfc6f1a432">00151</a> <span class="preprocessor">#define IO_PA30 30</span>
<a name="l00152"></a>00152 <span class="preprocessor"></span><span class="comment">/** IO 31, Port A */</span>
<a name="l00153"></a><a class="code" href="group___io_indices.html#g20683c2febd478f88deeb54ba1fc7691">00153</a> <span class="preprocessor">#define IO_PA31 31</span>
<a name="l00154"></a>00154 <span class="preprocessor"></span><span class="comment"></span>
<a name="l00155"></a>00155 <span class="comment">/** IO 0, Port B */</span>
<a name="l00156"></a><a class="code" href="group___io_indices.html#g0047bc8f7ee26b5297bdf6cc4049e490">00156</a> <span class="preprocessor">#define IO_PB00 ( 32 +  0 )</span>
<a name="l00157"></a>00157 <span class="preprocessor"></span><span class="comment">/** IO 1, Port B */</span>
<a name="l00158"></a><a class="code" href="group___io_indices.html#gca3916b2d0930e7b710cc6ce6f39b3a2">00158</a> <span class="preprocessor">#define IO_PB01 ( 32 +  1 )</span>
<a name="l00159"></a>00159 <span class="preprocessor"></span><span class="comment">/** IO 2, Port B */</span>
<a name="l00160"></a><a class="code" href="group___io_indices.html#g47202ddf3dad0f05de523e1693a50313">00160</a> <span class="preprocessor">#define IO_PB02 ( 32 +  2 )</span>
<a name="l00161"></a>00161 <span class="preprocessor"></span><span class="comment">/** IO 3, Port B */</span>
<a name="l00162"></a><a class="code" href="group___io_indices.html#gb788198fccae1aac3c3157d707b50e28">00162</a> <span class="preprocessor">#define IO_PB03 ( 32 +  3 )</span>
<a name="l00163"></a>00163 <span class="preprocessor"></span><span class="comment">/** IO 4, Port B */</span>
<a name="l00164"></a><a class="code" href="group___io_indices.html#g1d601f7586a15e76343f1f7b30c4b66e">00164</a> <span class="preprocessor">#define IO_PB04 ( 32 +  4 )</span>
<a name="l00165"></a>00165 <span class="preprocessor"></span><span class="comment">/** IO 5, Port B */</span>
<a name="l00166"></a><a class="code" href="group___io_indices.html#g2e7f22fd6747a82a3b1e57b46364a850">00166</a> <span class="preprocessor">#define IO_PB05 ( 32 +  5 )</span>
<a name="l00167"></a>00167 <span class="preprocessor"></span><span class="comment">/** IO 6, Port B */</span>
<a name="l00168"></a><a class="code" href="group___io_indices.html#g2dd179b0b942fb0c3679eb2532082fa0">00168</a> <span class="preprocessor">#define IO_PB06 ( 32 +  6 )</span>
<a name="l00169"></a>00169 <span class="preprocessor"></span><span class="comment">/** IO 7, Port B */</span>
<a name="l00170"></a><a class="code" href="group___io_indices.html#gce876c6ff950d143409486b41e66814a">00170</a> <span class="preprocessor">#define IO_PB07 ( 32 +  7 )</span>
<a name="l00171"></a>00171 <span class="preprocessor"></span><span class="comment">/** IO 8, Port B */</span>
<a name="l00172"></a><a class="code" href="group___io_indices.html#g5deddc20c81f12f7cf53e732f73ca8ad">00172</a> <span class="preprocessor">#define IO_PB08 ( 32 +  8 )</span>
<a name="l00173"></a>00173 <span class="preprocessor"></span><span class="comment">/** IO 9, Port B */</span>
<a name="l00174"></a><a class="code" href="group___io_indices.html#gc0f52969bf8fcf5c19f368c90407a3b0">00174</a> <span class="preprocessor">#define IO_PB09 ( 32 +  9 )</span>
<a name="l00175"></a>00175 <span class="preprocessor"></span><span class="comment">/** IO 10, Port B */</span>
<a name="l00176"></a><a class="code" href="group___io_indices.html#g2ab227f33cafebf023811c10a3dbffa3">00176</a> <span class="preprocessor">#define IO_PB10 ( 32 + 10 )</span>
<a name="l00177"></a>00177 <span class="preprocessor"></span><span class="comment">/** IO 11, Port B */</span>
<a name="l00178"></a><a class="code" href="group___io_indices.html#g89dff486f1ea1f58f8dd261cbd708e69">00178</a> <span class="preprocessor">#define IO_PB11 ( 32 + 11 )</span>
<a name="l00179"></a>00179 <span class="preprocessor"></span><span class="comment">/** IO 12, Port B */</span>
<a name="l00180"></a><a class="code" href="group___io_indices.html#g8c5b9487d74a92e46f4dfcb415e3582b">00180</a> <span class="preprocessor">#define IO_PB12 ( 32 + 12 )</span>
<a name="l00181"></a>00181 <span class="preprocessor"></span><span class="comment">/** IO 13, Port B */</span>
<a name="l00182"></a><a class="code" href="group___io_indices.html#g47d98750db3a0e228132668abc33f227">00182</a> <span class="preprocessor">#define IO_PB13 ( 32 + 13 )</span>
<a name="l00183"></a>00183 <span class="preprocessor"></span><span class="comment">/** IO 14, Port B */</span>
<a name="l00184"></a><a class="code" href="group___io_indices.html#g832ce8523dee0e5055f62d2b9fe655ac">00184</a> <span class="preprocessor">#define IO_PB14 ( 32 + 14 )</span>
<a name="l00185"></a>00185 <span class="preprocessor"></span><span class="comment">/** IO 15, Port B */</span>
<a name="l00186"></a><a class="code" href="group___io_indices.html#g7fadca14e06a2b49884ed0fdcff8a9f3">00186</a> <span class="preprocessor">#define IO_PB15 ( 32 + 15 )</span>
<a name="l00187"></a>00187 <span class="preprocessor"></span><span class="comment">/** IO 16, Port B */</span>
<a name="l00188"></a><a class="code" href="group___io_indices.html#g9638464545f49bc449c701389a59ae4b">00188</a> <span class="preprocessor">#define IO_PB16 ( 32 + 16 )</span>
<a name="l00189"></a>00189 <span class="preprocessor"></span><span class="comment">/** IO 17, Port B */</span>
<a name="l00190"></a><a class="code" href="group___io_indices.html#gc3f12184887d301d79f22277d05d3d77">00190</a> <span class="preprocessor">#define IO_PB17 ( 32 + 17 )</span>
<a name="l00191"></a>00191 <span class="preprocessor"></span><span class="comment">/** IO 18, Port B */</span>
<a name="l00192"></a><a class="code" href="group___io_indices.html#ge8d84036efe44dcb81b254453acc6d23">00192</a> <span class="preprocessor">#define IO_PB18 ( 32 + 18 )</span>
<a name="l00193"></a>00193 <span class="preprocessor"></span><span class="comment">/** IO 19, Port B */</span>
<a name="l00194"></a><a class="code" href="group___io_indices.html#gdf47d7d82809ec71dcb28c43f5974e14">00194</a> <span class="preprocessor">#define IO_PB19 ( 32 + 19 )</span>
<a name="l00195"></a>00195 <span class="preprocessor"></span><span class="comment">/** IO 20, Port B */</span>
<a name="l00196"></a><a class="code" href="group___io_indices.html#g41b3581cc45a89322dbee0e87f8a7803">00196</a> <span class="preprocessor">#define IO_PB20 ( 32 + 20 )</span>
<a name="l00197"></a>00197 <span class="preprocessor"></span><span class="comment">/** IO 21, Port B */</span>
<a name="l00198"></a><a class="code" href="group___io_indices.html#g67329c23d762a1d9a534a9ae400e699f">00198</a> <span class="preprocessor">#define IO_PB21 ( 32 + 21 )</span>
<a name="l00199"></a>00199 <span class="preprocessor"></span><span class="comment">/** IO 22, Port B */</span>
<a name="l00200"></a><a class="code" href="group___io_indices.html#ge81f430e9468b374a0cd0180894b1b1d">00200</a> <span class="preprocessor">#define IO_PB22 ( 32 + 22 )</span>
<a name="l00201"></a>00201 <span class="preprocessor"></span><span class="comment">/** IO 23, Port B */</span>
<a name="l00202"></a><a class="code" href="group___io_indices.html#g9d19d5af52740fffcd01e071da6d25c3">00202</a> <span class="preprocessor">#define IO_PB23 ( 32 + 23 )</span>
<a name="l00203"></a>00203 <span class="preprocessor"></span><span class="comment">/** IO 24, Port B */</span>
<a name="l00204"></a><a class="code" href="group___io_indices.html#g945c29e3c17e56057025557bb6d0a089">00204</a> <span class="preprocessor">#define IO_PB24 ( 32 + 24 )</span>
<a name="l00205"></a>00205 <span class="preprocessor"></span><span class="comment">/** IO 25, Port B */</span>
<a name="l00206"></a><a class="code" href="group___io_indices.html#g22e690d430d2a27e1544b2ddc618229f">00206</a> <span class="preprocessor">#define IO_PB25 ( 32 + 25 )</span>
<a name="l00207"></a>00207 <span class="preprocessor"></span><span class="comment">/** IO 26, Port B */</span>
<a name="l00208"></a><a class="code" href="group___io_indices.html#gd7549824a387f3f83665a32c7f9a4338">00208</a> <span class="preprocessor">#define IO_PB26 ( 32 + 26 )</span>
<a name="l00209"></a>00209 <span class="preprocessor"></span><span class="comment">/** IO 27, Port B */</span>
<a name="l00210"></a><a class="code" href="group___io_indices.html#g985abc393a531adcc2407b3b0a028e5f">00210</a> <span class="preprocessor">#define IO_PB27 ( 32 + 27 )</span>
<a name="l00211"></a>00211 <span class="preprocessor"></span><span class="comment">/** IO 28, Port B */</span>
<a name="l00212"></a><a class="code" href="group___io_indices.html#gca72694aa1a1699a80822a9b0660f6b7">00212</a> <span class="preprocessor">#define IO_PB28 ( 32 + 28 )</span>
<a name="l00213"></a>00213 <span class="preprocessor"></span><span class="comment">/** IO 29, Port B */</span>
<a name="l00214"></a><a class="code" href="group___io_indices.html#g317428fe1cf21e7e2f7267591b6a99a8">00214</a> <span class="preprocessor">#define IO_PB29 ( 32 + 29 )</span>
<a name="l00215"></a>00215 <span class="preprocessor"></span><span class="comment">/** IO 30, Port B */</span>
<a name="l00216"></a><a class="code" href="group___io_indices.html#g10810c147c332dff21dab79c443af74c">00216</a> <span class="preprocessor">#define IO_PB30 ( 32 + 30 )</span>
<a name="l00217"></a>00217 <span class="preprocessor"></span><span class="comment">/** IO 31, Port B */</span>
<a name="l00218"></a><a class="code" href="group___io_indices.html#gca6140e350ed0e1d1993f043fd3d5369">00218</a> <span class="preprocessor">#define IO_PB31 ( 32 + 31 )</span>
<a name="l00219"></a>00219 <span class="preprocessor"></span>
<a name="l00220"></a>00220 <span class="comment">/* @} */</span>
<a name="l00221"></a>00221 <span class="comment"></span>
<a name="l00222"></a>00222 <span class="comment">/**</span>
<a name="l00223"></a>00223 <span class="comment">\defgroup IoBits</span>
<a name="l00224"></a>00224 <span class="comment">  Bit values (1 &lt;&lt; 0-63) for each of the processor's IO lines.  Since there are </span>
<a name="l00225"></a>00225 <span class="comment">  so many, the data type is a long long - (a 64 bit number).</span>
<a name="l00226"></a>00226 <span class="comment">\ingroup Io</span>
<a name="l00227"></a>00227 <span class="comment">@{</span>
<a name="l00228"></a>00228 <span class="comment">*/</span>
<a name="l00229"></a>00229 
<a name="l00230"></a>00230 <span class="preprocessor">#define IO_PA00_BIT 1LL&lt;&lt;0x00</span>
<a name="l00231"></a>00231 <span class="preprocessor"></span><span class="preprocessor">#define IO_PA01_BIT 1LL&lt;&lt;0x01</span>
<a name="l00232"></a>00232 <span class="preprocessor"></span><span class="preprocessor">#define IO_PA02_BIT 1LL&lt;&lt;0x02</span>
<a name="l00233"></a>00233 <span class="preprocessor"></span><span class="preprocessor">#define IO_PA03_BIT 1LL&lt;&lt;0x03</span>
<a name="l00234"></a>00234 <span class="preprocessor"></span><span class="preprocessor">#define IO_PA04_BIT 1LL&lt;&lt;0x04</span>
<a name="l00235"></a>00235 <span class="preprocessor"></span><span class="preprocessor">#define IO_PA05_BIT 1LL&lt;&lt;0x05</span>
<a name="l00236"></a>00236 <span class="preprocessor"></span><span class="preprocessor">#define IO_PA06_BIT 1LL&lt;&lt;0x06</span>
<a name="l00237"></a>00237 <span class="preprocessor"></span><span class="preprocessor">#define IO_PA07_BIT 1LL&lt;&lt;0x07</span>
<a name="l00238"></a>00238 <span class="preprocessor"></span><span class="preprocessor">#define IO_PA08_BIT 1LL&lt;&lt;0x08</span>
<a name="l00239"></a>00239 <span class="preprocessor"></span><span class="preprocessor">#define IO_PA09_BIT 1LL&lt;&lt;0x09</span>
<a name="l00240"></a>00240 <span class="preprocessor"></span><span class="preprocessor">#define IO_PA10_BIT 1LL&lt;&lt;0x0A</span>
<a name="l00241"></a>00241 <span class="preprocessor"></span><span class="preprocessor">#define IO_PA11_BIT 1LL&lt;&lt;0x0B</span>
<a name="l00242"></a>00242 <span class="preprocessor"></span><span class="preprocessor">#define IO_PA12_BIT 1LL&lt;&lt;0x0C</span>
<a name="l00243"></a>00243 <span class="preprocessor"></span><span class="preprocessor">#define IO_PA13_BIT 1LL&lt;&lt;0x0D</span>
<a name="l00244"></a>00244 <span class="preprocessor"></span><span class="preprocessor">#define IO_PA14_BIT 1LL&lt;&lt;0x0E</span>
<a name="l00245"></a>00245 <span class="preprocessor"></span><span class="preprocessor">#define IO_PA15_BIT 1LL&lt;&lt;0x0F</span>
<a name="l00246"></a>00246 <span class="preprocessor"></span><span class="preprocessor">#define IO_PA16_BIT 1LL&lt;&lt;0x10</span>
<a name="l00247"></a>00247 <span class="preprocessor"></span><span class="preprocessor">#define IO_PA17_BIT 1LL&lt;&lt;0x11</span>
<a name="l00248"></a>00248 <span class="preprocessor"></span><span class="preprocessor">#define IO_PA18_BIT 1LL&lt;&lt;0x12</span>
<a name="l00249"></a>00249 <span class="preprocessor"></span><span class="preprocessor">#define IO_PA19_BIT 1LL&lt;&lt;0x13</span>
<a name="l00250"></a>00250 <span class="preprocessor"></span><span class="preprocessor">#define IO_PA20_BIT 1LL&lt;&lt;0x14</span>
<a name="l00251"></a>00251 <span class="preprocessor"></span><span class="preprocessor">#define IO_PA21_BIT 1LL&lt;&lt;0x15</span>
<a name="l00252"></a>00252 <span class="preprocessor"></span><span class="preprocessor">#define IO_PA22_BIT 1LL&lt;&lt;0x16</span>
<a name="l00253"></a>00253 <span class="preprocessor"></span><span class="preprocessor">#define IO_PA23_BIT 1LL&lt;&lt;0x17</span>
<a name="l00254"></a>00254 <span class="preprocessor"></span><span class="preprocessor">#define IO_PA24_BIT 1LL&lt;&lt;0x18</span>
<a name="l00255"></a>00255 <span class="preprocessor"></span><span class="preprocessor">#define IO_PA25_BIT 1LL&lt;&lt;0x19</span>
<a name="l00256"></a>00256 <span class="preprocessor"></span><span class="preprocessor">#define IO_PA26_BIT 1LL&lt;&lt;0x1A</span>
<a name="l00257"></a>00257 <span class="preprocessor"></span><span class="preprocessor">#define IO_PA27_BIT 1LL&lt;&lt;0x1B</span>
<a name="l00258"></a>00258 <span class="preprocessor"></span><span class="preprocessor">#define IO_PA28_BIT 1LL&lt;&lt;0x1C</span>
<a name="l00259"></a>00259 <span class="preprocessor"></span><span class="preprocessor">#define IO_PA29_BIT 1LL&lt;&lt;0x1D</span>
<a name="l00260"></a>00260 <span class="preprocessor"></span><span class="preprocessor">#define IO_PA30_BIT 1LL&lt;&lt;0x1E</span>
<a name="l00261"></a>00261 <span class="preprocessor"></span><span class="preprocessor">#define IO_PA31_BIT 1LL&lt;&lt;0x1F</span>
<a name="l00262"></a>00262 <span class="preprocessor"></span>
<a name="l00263"></a>00263 <span class="preprocessor">#define IO_PB00_BIT 1LL&lt;&lt;0x20</span>
<a name="l00264"></a>00264 <span class="preprocessor"></span><span class="preprocessor">#define IO_PB01_BIT 1LL&lt;&lt;0x21</span>
<a name="l00265"></a>00265 <span class="preprocessor"></span><span class="preprocessor">#define IO_PB02_BIT 1LL&lt;&lt;0x22</span>
<a name="l00266"></a>00266 <span class="preprocessor"></span><span class="preprocessor">#define IO_PB03_BIT 1LL&lt;&lt;0x23</span>
<a name="l00267"></a>00267 <span class="preprocessor"></span><span class="preprocessor">#define IO_PB04_BIT 1LL&lt;&lt;0x24</span>
<a name="l00268"></a>00268 <span class="preprocessor"></span><span class="preprocessor">#define IO_PB05_BIT 1LL&lt;&lt;0x25</span>
<a name="l00269"></a>00269 <span class="preprocessor"></span><span class="preprocessor">#define IO_PB06_BIT 1LL&lt;&lt;0x26</span>
<a name="l00270"></a>00270 <span class="preprocessor"></span><span class="preprocessor">#define IO_PB07_BIT 1LL&lt;&lt;0x27</span>
<a name="l00271"></a>00271 <span class="preprocessor"></span><span class="preprocessor">#define IO_PB08_BIT 1LL&lt;&lt;0x28</span>
<a name="l00272"></a>00272 <span class="preprocessor"></span><span class="preprocessor">#define IO_PB09_BIT 1LL&lt;&lt;0x29</span>
<a name="l00273"></a>00273 <span class="preprocessor"></span><span class="preprocessor">#define IO_PB10_BIT 1LL&lt;&lt;0x2A</span>
<a name="l00274"></a>00274 <span class="preprocessor"></span><span class="preprocessor">#define IO_PB11_BIT 1LL&lt;&lt;0x2B</span>
<a name="l00275"></a>00275 <span class="preprocessor"></span><span class="preprocessor">#define IO_PB12_BIT 1LL&lt;&lt;0x2C</span>
<a name="l00276"></a>00276 <span class="preprocessor"></span><span class="preprocessor">#define IO_PB13_BIT 1LL&lt;&lt;0x2D</span>
<a name="l00277"></a>00277 <span class="preprocessor"></span><span class="preprocessor">#define IO_PB14_BIT 1LL&lt;&lt;0x2E</span>
<a name="l00278"></a>00278 <span class="preprocessor"></span><span class="preprocessor">#define IO_PB15_BIT 1LL&lt;&lt;0x2F</span>
<a name="l00279"></a>00279 <span class="preprocessor"></span><span class="preprocessor">#define IO_PB16_BIT 1LL&lt;&lt;0x30</span>
<a name="l00280"></a>00280 <span class="preprocessor"></span><span class="preprocessor">#define IO_PB17_BIT 1LL&lt;&lt;0x31</span>
<a name="l00281"></a>00281 <span class="preprocessor"></span><span class="preprocessor">#define IO_PB18_BIT 1LL&lt;&lt;0x32</span>
<a name="l00282"></a>00282 <span class="preprocessor"></span><span class="preprocessor">#define IO_PB19_BIT 1LL&lt;&lt;0x33</span>
<a name="l00283"></a>00283 <span class="preprocessor"></span><span class="preprocessor">#define IO_PB20_BIT 1LL&lt;&lt;0x34</span>
<a name="l00284"></a>00284 <span class="preprocessor"></span><span class="preprocessor">#define IO_PB21_BIT 1LL&lt;&lt;0x35</span>
<a name="l00285"></a>00285 <span class="preprocessor"></span><span class="preprocessor">#define IO_PB22_BIT 1LL&lt;&lt;0x36</span>
<a name="l00286"></a>00286 <span class="preprocessor"></span><span class="preprocessor">#define IO_PB23_BIT 1LL&lt;&lt;0x37</span>
<a name="l00287"></a>00287 <span class="preprocessor"></span><span class="preprocessor">#define IO_PB24_BIT 1LL&lt;&lt;0x38</span>
<a name="l00288"></a>00288 <span class="preprocessor"></span><span class="preprocessor">#define IO_PB25_BIT 1LL&lt;&lt;0x39</span>
<a name="l00289"></a>00289 <span class="preprocessor"></span><span class="preprocessor">#define IO_PB26_BIT 1LL&lt;&lt;0x3A</span>
<a name="l00290"></a>00290 <span class="preprocessor"></span><span class="preprocessor">#define IO_PB27_BIT 1LL&lt;&lt;0x3B</span>
<a name="l00291"></a>00291 <span class="preprocessor"></span><span class="preprocessor">#define IO_PB28_BIT 1LL&lt;&lt;0x3C</span>
<a name="l00292"></a>00292 <span class="preprocessor"></span><span class="preprocessor">#define IO_PB29_BIT 1LL&lt;&lt;0x3D</span>
<a name="l00293"></a>00293 <span class="preprocessor"></span><span class="preprocessor">#define IO_PB30_BIT 1LL&lt;&lt;0x3E</span>
<a name="l00294"></a>00294 <span class="preprocessor"></span><span class="preprocessor">#define IO_PB31_BIT 1LL&lt;&lt;0x3F</span>
<a name="l00295"></a>00295 <span class="preprocessor"></span><span class="comment"></span>
<a name="l00296"></a>00296 <span class="comment">/**</span>
<a name="l00297"></a>00297 <span class="comment">@}</span>
<a name="l00298"></a>00298 <span class="comment">*/</span>
<a name="l00299"></a>00299 
<a name="l00300"></a>00300 <span class="preprocessor">#endif</span>
</pre></div><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Make Controller Kit</title>
<style type="text/css">
<!--
.footer {
	font-family: Verdana, Arial, Helvetica, sans-serif;
	font-size: 9pt;
	color: #999999;
}
-->
</style>
</head>

<body>
<hr size="1">
<div>
  <p class="footer">The Make Controller Kit is an open source project maintained by <a href="http://www.makingthings.com">MakingThings</a>.<br />
    MakingThings code is released under the <a href="http://www.apache.org/licenses/LICENSE-2.0.html" target="_blank">Apache 2.0 license</a>.<br />
    Bug tracker, development wiki and status can be found at <a href="http://dev.makingthings.com">http://dev.makingthings.com</a>.<br />
		This document was last updated on 5 Dec 2007.
</p>
</div>
<!-- Google Analytics Code -->
<script src="http://www.google-analytics.com/urchin.js" type="text/javascript">
</script>
<script type="text/javascript">
_uacct = "UA-769030-1";
urchinTracker();
</script>
</body>
</html>
